How does rock music change over the years?

The corpus I chose to be represented in my final assignment is a comparison of rock music from the 80s, 90s and 2000s. The rock genre is my favourite across the decades and looking into what ties them together and sets them apart is interesting to me. The natural comparison point in this corpus would be the genre, separated by the decade, specifically the 80s, 90s, and early 2000s.

Through this corpus, I expect the themes between decades to be quite similar, as no matter the year, the rock genre stands for certain messages that won’t change, such as themes of rebellion, social commentary, and personal struggles across all three decades. However, I expect the musical style to differ between the decades, making the 90s have more energy than the 80s, and the 2000s even more than the 90s.

Overall, I don’t see any limitations or gaps in the chosen corpus. If I were to potentially expand it, I would expect gaps in lesser known artists, or covers of known songs, but in the already selected corpus with limited tracks, I didn’t face any obstacles with gaps in Spotify.

Some typical tracks from my corpus include “Sweet Child o’ Mine” by Guns N’ Roses, “Smells Like Teen Spirit” by Nirvana, or “How You Remind Me” by Nickelback, as these are considered to be perfect representation of the genre at the stage of their decade. On the other hand, some atypical tracks would be “Wonderwall” by Oasis or “Feel Good Inc.” by Gorillaz seeing as these are tracks that deviate from the mainstream trends and offer a more unique or experimental approach to the genre.

Under the hood of some of the world’s most famous chords

# A tibble: 1 × 13
  analyzer_version duration end_of_fade_in start_of_fade_out tempo_confidence
  <chr>               <dbl>          <dbl>             <dbl>            <dbl>
1 4.0.0                249.           5.94              234.            0.797
# ℹ 8 more variables: time_signature_confidence <dbl>, key_confidence <dbl>,
#   mode_confidence <dbl>, bars <list>, beats <list>, tatums <list>,
#   sections <list>, segments <list>


“Livin’ On A Prayer” by Bon Jovi is not only one of the most famous songs the band has made, but it is one of the most famous songs of all time. It features a distinctive chord progression that is both recognizable and iconic in the realm of rock music.

Keys as beautiful as a soft November Rain


“November Rain” by Guns’N’Roses is a song who’s keys are so distinct they can be indetified anywhere, anytime, by anyone. “Novemeber Rain” incorporates various key changes and modulations throughout the song, and analyzing the key changes in a keygram can reveal the song’s overall tonal journey, highlighting key moments and transitions that contribute to its emotional impact.

Deciphering the Keys to the Decades


Using this visualisation, we can see the most popular keys used in each decade of rock music. An interesting takeway from this is while they stay similar throughout the decade, there are slight differences we can spot.

Tempo throught the Times


With this visualisation, we can compare the songs in the corpus from all three decades in regards to their tempo.

The American Idiot shines as bright as a star

# A tibble: 1 × 13
  analyzer_version duration end_of_fade_in start_of_fade_out tempo_confidence
  <chr>               <dbl>          <dbl>             <dbl>            <dbl>
1 4.0.0                176.           2.91              176.            0.441
# ℹ 8 more variables: time_signature_confidence <dbl>, key_confidence <dbl>,
#   mode_confidence <dbl>, bars <list>, beats <list>, tatums <list>,
#   sections <list>, segments <list>


Spotify’s API looks into multiple variables to analyse their tracks. When looking into what an important outlier would be to visualize as a cepstrogram, two variables stood out: loudness and energy. It just so happens that one sing in my corpus was both the loudest and had the most energy, and that was “American Idiot” by Greenday.This can be visually seen through the cepstrogram by how high the magnitude is in c01, but mainly in c02, throughout the whole songs.

Visualizing the Beat: Exploring Typical vs. Atypical 90s rock

Wonderwall by Oasis: Self Similarity Matrix based on Timbre

# A tibble: 1 × 13
  analyzer_version duration end_of_fade_in start_of_fade_out tempo_confidence
  <chr>               <dbl>          <dbl>             <dbl>            <dbl>
1 4.0.0                259.          0.196              251.             0.14
# ℹ 8 more variables: time_signature_confidence <dbl>, key_confidence <dbl>,
#   mode_confidence <dbl>, bars <list>, beats <list>, tatums <list>,
#   sections <list>, segments <list>


When introducing my corpus, I detailed what may be considered typical and atypical songs from each decade. From the 90s, what can be considered an atypical song of the rock genre would be “Wonderwall” by Oasis. Here, you can see the self similarity matrix based on timbre for the song mentioned. You can see an obvious point of comparison just after the 100 second mark. When listening to the song, this is a point right after the chorus. I believe this stands out when looking at timbre features is because of the isolation of instruments in this segments. You can clearly separate the drums, guitar, and vocals here.

Wonderwall by Oasis: Self Similarity Matrix based on Chroma

# A tibble: 1 × 13
  analyzer_version duration end_of_fade_in start_of_fade_out tempo_confidence
  <chr>               <dbl>          <dbl>             <dbl>            <dbl>
1 4.0.0                259.          0.196              251.             0.14
# ℹ 8 more variables: time_signature_confidence <dbl>, key_confidence <dbl>,
#   mode_confidence <dbl>, bars <list>, beats <list>, tatums <list>,
#   sections <list>, segments <list>


Similarly, when looking at the chroma features through a self similarity matrix, this point of comparison also stands out due to the similarities of the pitches.

Smells Like Teen Spirit by Nirvana: Self Similarity Matrix based on Timbre

# A tibble: 1 × 13
  analyzer_version duration end_of_fade_in start_of_fade_out tempo_confidence
  <chr>               <dbl>          <dbl>             <dbl>            <dbl>
1 4.0.0                302.           1.02              287.              0.8
# ℹ 8 more variables: time_signature_confidence <dbl>, key_confidence <dbl>,
#   mode_confidence <dbl>, bars <list>, beats <list>, tatums <list>,
#   sections <list>, segments <list>


We discussed what an atypical rock song form the 90s looks like, what about a typical one? For example “Smells Like Teen Spirit” by Nirvana. When looking at the self similarity matrix based on timbre features of the song. You can see the darkest part of the grid is between almost the 160 second mark and the 210 second mark. This is because there is an instrumental section where the instruments clearly stand out and you can dustinguish the differen instruments playing in this segment. On the other hand, when you compare this segment to the one from roughly 25 seconds to 60 seconds, you can see that it is yellow and quite light colored on the matrix, meaning there is little similarity between both segments. If you listen to this passage in the song, it was quite low energy compared the instrument solo later on, which explains the light colors on the matrix.

Smells Like Teen Spirit by Nirvana: Self Similarity Matrix based on Chroma

# A tibble: 1 × 13
  analyzer_version duration end_of_fade_in start_of_fade_out tempo_confidence
  <chr>               <dbl>          <dbl>             <dbl>            <dbl>
1 4.0.0                302.           1.02              287.              0.8
# ℹ 8 more variables: time_signature_confidence <dbl>, key_confidence <dbl>,
#   mode_confidence <dbl>, bars <list>, beats <list>, tatums <list>,
#   sections <list>, segments <list>


When looking at the same song’s self similarity matrix but based on chroma features this time, you see that more or less, the same passages light up, however the colored “squares” are vary more in this matrix and that’s because instead of just comparing the “feel” of the segment, it compares he specific pitch, also known as chroma.

What can we conclude

What we can take away from the analysis of both of these songs, is that it is much easier to look into the differences and similarities of the timbre and chroma of a typical song from the rock genre. When looking at the visualisations of “Smells Like Teen Spirit” by Nirvana, there are certain aspects that stand out to the eye and make it quite easy to analyse. On the other hand, when looking at the visualisations of “Wonderwall” by Oasis, it is much more difficult to find moments that stand out. In my opinion, this is because in the typical song, there is a variation of timbre and chroma, the segments range from high energy and loundness to low energy. In the atypical song, the chroma and pitch of the segments is more or less the same throughout the song, and the same goes for timbre.

00s kids likely to go lose hearing in their younger years


The scatter plot I made is divided into three sections, one for each decade, with the Danceability variable on the y-axis and the Valence variable on te x-axis. I was interested to see if the valence of a song made it more danceable. Other variables measured in this scatter plot are Track Popularity, measured by color, where a track is considered “Very” popular if it measured superior to 75, and “Little” popular if it measured inferior to 75. I also measured loudness, which I found interesting to look into for rock music, and that variable is measured by size. From the plot, I can see that 00s rock is louder than both other decades, which was interesting to find out, but not surprising. Valence and Dancebaility don’t affect track popularity, and if valence and dasnecability have an effect on one another, it can’t be seen from a quick visualisation and would need to be looked into further.

A Happier Time

# A tibble: 1 × 13
  analyzer_version duration end_of_fade_in start_of_fade_out tempo_confidence
  <chr>               <dbl>          <dbl>             <dbl>            <dbl>
1 4.0.0                175.              0              172.            0.356
# ℹ 8 more variables: time_signature_confidence <dbl>, key_confidence <dbl>,
#   mode_confidence <dbl>, bars <list>, beats <list>, tatums <list>,
#   sections <list>, segments <list>


Out of 90 songs through 3 decade, this song, “I Love Rock ’N Roll” by Joan Jett & the Blackhearts, had the most valence. If you really focus, the 80s generally had happier rock music than the other two decades we’re looking into. So, the happied rock song of the 80s, 90s, and the 00s, is no presented as a chromogram.